import java.util.Scanner;

public class text1 {
    //给你一个整数数组 nums 和一个整数 k ，请你返回子数组内所有元素的乘积严格小于 k 的连续子数组的数目。
    public static int check(int[] nums,int k) {
        int n=nums.length;
        int su=1;
        int left=0;
        int count=0;
        for(int right=0;right<n;right++) {
            if (nums[right] ==0) {//出现零时
                su=0;//重置乘积
                left=right+1;//更新左指针
            }
            else{
                su *= nums[right];
            }
            while (su >= k&&left<=right){//缩小窗口
                su/=nums[left];
                left++;
            }
            count+=right-left+1;//【left.right】满足结果，则他们的字串也满足
        }
        return count;
    }
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n=sc.nextInt();
        int[] nums=new int[n];
        for(int i=0;i<n;i++){
            nums[i]=sc.nextInt();
        }
        int k=sc.nextInt();
        int count=check(nums,k);
        System.out.println(count);
        sc.close();
    }
}
